package pattern.responsibilityChain;

/**
 * @Author: Yangu
 * @Created time: 2020/11/4 15:27
 * @Description :
 */
public abstract class AbstractLeaveHandler {

    /**直接主管审批处理的请假天数*/
    protected int MIN = 1;
    /**部门经理处理的请假天数*/
    protected int MIDDLE = 3;
    /**总经理处理的请假天数*/
    protected int MAX = 30;

    /**领导名称*/
    protected String handlerName;

    /**下一个处理节点（即更高级别的领导）*/
    protected AbstractLeaveHandler nextHandler;

    /**设置下一节点*/
    protected void setNextHandler(AbstractLeaveHandler handler){
        this.nextHandler = handler;
    }

    protected abstract void handlerRequest(LeaveRequest request);
}
